home *** CD-ROM | disk | FTP | other *** search
/ Collection of Tools & Utilities / Collection of Tools and Utilities.iso / dskut / p22v12.zip / QEMM.P22 < prev   
Text File  |  1991-05-27  |  18KB  |  568 lines

  1. ;This patch command is based on the Quarterdeck Technical Notes given below.
  2. ;These Technical Notes were found in the files REALLOC.PAT and FUNC24.PAT
  3. ;
  4. ; QEMM386.sys is the name starting from version 5.10
  5. ;
  6. qemm386.sys *1?\h7506010E?\hEB06010E?
  7. qemm386.sys *1?\h8BCB0BDA74F0?\h8BCB0BDA7422?
  8.  
  9. ;
  10. ; QEMM.sys is the name until version 5.0
  11. ;
  12. qemm.sys    *1?\h7507010E?\hEB07010E?
  13. qemm.sys    *1?\h8BCB0BDA74F0?\h8BCB0BDA7422?
  14. ;
  15. ;
  16. ;Here follow the instructions from Quarterdeck, which have been
  17. ;translated into the PATCH22 commands above
  18. ;
  19. ;============================================================================
  20. ;
  21. ;   Quarterdeck Technical Note (From the file: REALLOC.PAT)
  22. ;
  23. ;   Subject:  Patching QEMM-386 5.00, 5.10, 5.11, and
  24. ;   5.12 to resolve problems with programs that resize
  25. ;   EMS or XMS handles
  26. ;
  27. ;     Background: Starting with QEMM-386 5.00, QEMM-386
  28. ;   supports both the EMS (Expanded Memory
  29. ;   Specification), which governs access to expanded
  30. ;   memory, and the more recent XMS (Extended Memory
  31. ;   Specification), which governs access to extended
  32. ;   memory.  Requests for EMS and for XMS memory are
  33. ;   both filled from the same pool of QEMM-managed
  34. ;   memory, and EMS and XMS handles (numbers that the
  35. ;   memory manager returns to a program when the
  36. ;   program takes a chunk of memory, so that the
  37. ;   program can quickly identify the chunk when it next
  38. ;   communicates with the memory manager) are managed
  39. ;   together by QEMM-386.
  40. ;
  41. ;     Both EMS and XMS contain a call that programs can
  42. ;   make to reallocate blocks of memory; that is, to
  43. ;   take a handle that the program has already received
  44. ;   and increase or decrease the chunk of memory to
  45. ;   which the handle refers.  Users of QEMM-386
  46. ;   versions 5.00 through 5.12 may experience system
  47. ;   instability under certain circumstances when a
  48. ;   program makes an EMS or XMS call to increase the
  49. ;   size of a handle.  The symptom is likely to be a
  50. ;   system crash or a reboot.
  51. ;
  52. ;     Users of versions of QEMM-386 after version 5.12
  53. ;   should not experience this problem.  In the
  54. ;   meantime, QEMM-386 can be patched to eliminate the
  55. ;   problem.
  56. ;
  57. ;
  58. ;     The following procedure is intended to prevent
  59. ;   system crashes and reboots when Reallocate Memory
  60. ;   EMS and XMS functions are used to increase the size
  61. ;   of EMS and XMS handles.  This procedure is for use
  62. ;   with QEMM-386 versions:
  63. ;
  64. ;           5.10
  65. ;           5.11
  66. ;           5.12
  67. ;
  68. ;   ***************************************************
  69. ;
  70. ;     Do NOT use this patch for QEMM-386 5.0; a
  71. ;   separate procedure for QEMM-386 5.0 is later in
  72. ;   this technote.  If you are in doubt, go to the
  73. ;   directory where the QEMM-386 files are located and
  74. ;   check the date on the QEMM386.SYS file by issuing
  75. ;   the DOS command:
  76. ;
  77. ;             DIR QEMM386.SYS
  78. ;
  79. ;   If the date on the file is
  80. ;
  81. ;             5:10 am
  82. ;             5:11 am
  83. ;             5:12 am
  84. ;
  85. ;   then use the patch in this section. If there is no
  86. ;   QEMM386.SYS file in this directory, then you
  87. ;   probably have an earlier version of QEMM-386; go
  88. ;   forward to the section that deals with the patch
  89. ;   for QEMM-386 5.0.
  90. ;
  91. ;   ***************************************************
  92. ;
  93. ;     1) Make a copy of the QEMM386.SYS file in your
  94. ;   QEMM directory.  We are about to alter your current
  95. ;   copy of QEMM386.SYS; the copy you make will serve
  96. ;   as a backup in case this operation fails.
  97. ;
  98. ;         COPY C:\QEMM\QEMM386.SYS C:\QEMM\QEMM386.OLD
  99. ;
  100. ;     (If your QEMM386.SYS is not located in the QEMM
  101. ;   directory of the C: drive, change the path
  102. ;   accordingly.)
  103. ;
  104. ;     2) Go to the DOS directory on the hard disk and
  105. ;   type:
  106. ;
  107. ;       DEBUG C:\QEMM\QEMM386.SYS
  108. ;
  109. ;     (If your QEMM386.SYS is not located in the QEMM
  110. ;   directory of the C: drive, change the path
  111. ;   accordingly.)
  112. ;
  113. ;     Hit the Enter key; you should see the DEBUG
  114. ;   prompt, which is a hyphen.
  115. ;
  116. ;     3) At the DEBUG prompt, type:
  117. ;
  118. ;       S 100 L F000 75 6 1 0E
  119. ;
  120. ;     Hit the Enter key; DEBUG should return a segment
  121. ;   address and an offset:
  122. ;
  123. ;       xxxx:yyyy
  124. ;
  125. ;     4) At the DEBUG prompt again, use the segment
  126. ;   address and offset that was just returned to give
  127. ;   the DEBUG command:
  128. ;
  129. ;       E xxxx:yyyy EB
  130. ;
  131. ;     The address that DEBUG returned in step 3 should
  132. ;   be used in place of the address xxxx:yyyy, which we
  133. ;   use as an example.  Hit the Enter key; the DEBUG
  134. ;   prompt should return in a moment.
  135. ;
  136. ;
  137. ;     5) At the DEBUG prompt, type
  138. ;
  139. ;       W
  140. ;
  141. ;     Hit the Enter key; DEBUG will announce that it is
  142. ;   writing a certain number of bytes, then it will
  143. ;   return the DEBUG prompt.
  144. ;
  145. ;     6) At the DEBUG prompt, type
  146. ;
  147. ;       Q
  148. ;
  149. ;     Hit the Enter key to exit DEBUG and return to
  150. ;   DOS.
  151. ;
  152. ;     7) To double-check your patch, type the following
  153. ;   from the DOS prompt in your DOS directory:
  154. ;
  155. ;       COMP C:\QEMM\QEMM386.SYS C:\QEMM\QEMM386.OLD
  156. ;
  157. ;    (If your QEMM386.SYS is not located in the QEMM
  158. ;   directory of the C: drive, change the path
  159. ;   accordingly.)
  160. ;
  161. ;     Hit the Enter key.  COMP should return:
  162. ;
  163. ;
  164. ;                 C:QEMM386.SYS and C:QEMM386.OLD
  165. ;
  166. ;                 Compare error at OFFSET xxxx
  167. ;                 File 1 = EB
  168. ;
  169. ;                 File 2 = 75
  170. ;
  171. ;                 Eof mark not found
  172. ;
  173. ;                 Compare more files (Y/N)?
  174. ;
  175. ;     The value xxxx after OFFSET will vary from
  176. ;   version to version of QEMM 5.1, but the rest of the
  177. ;   message should be the same: it tells us that
  178. ;   there is exactly one byte difference between the
  179. ;   files, and the differing byte is EB in QEMM386.SYS
  180. ;   and 75 in QEMM386.OLD.  If COMP returns the
  181. ;   message:
  182. ;
  183. ;                 Files compare ok
  184. ;
  185. ;   ...then you probably failed to use DEBUG's W
  186. ;   command to save your change, or you have compared
  187. ;   the wrong files.  If COMP returns more than one
  188. ;   compare error, or if the bytes returned by the
  189. ;   compare error don't match those in the above
  190. ;   example, the procedure has failed.  In this case,
  191. ;   use the DOS command:
  192. ;
  193. ;       COPY C:\QEMM\QEMM386.OLD C:\QEMM\QEMM386.SYS
  194. ;
  195. ;   ... to restore the original file, and try again.
  196. ;
  197. ;   If the patch was successful, you should now reboot
  198. ;   the system and test the patched version of QEMM-
  199. ;   386.  If the patched version of QEMM-386 fails, see
  200. ;   the section at the end of the technote on restoring
  201. ;   your original copy.  Otherwise, you are finished
  202. ;   with the patch.
  203. ;
  204. ;
  205. ;   ---------------------------------------------------
  206. ;
  207. ;
  208. ;     The following procedure is intended to prevent
  209. ;   system crashes and reboots when Reallocate Memory
  210. ;   EMS and XMS functions are used to increase the size
  211. ;   of EMS and XMS handles with QEMM 5.00.
  212. ;
  213. ;
  214. ;   ***********************************************
  215. ;
  216. ;   This patch is for:
  217. ;
  218. ;            QEMM-386 5.00
  219. ;
  220. ;   A separate procedure for other versions appears
  221. ;   earlier in this technote.  If you are in doubt, go
  222. ;   to the directory where the QEMM-386 files are
  223. ;   located and check the date on the QEMM.SYS file by
  224. ;   issuing the DOS command:
  225. ;
  226. ;               DIR QEMM.SYS
  227. ;
  228. ;   If the date on the file is
  229. ;
  230. ;                5:00 am
  231. ;
  232. ;   then this patch is the one to use.  If there is no
  233. ;   QEMM.SYS file in this directory, then you probably
  234. ;   have a later version of QEMM-386; go back to the
  235. ;   section that deals with the patch for QEMM-386 5.1.
  236. ;
  237. ;   ***************************************************
  238. ;
  239. ;     1) Make a copy of the QEMM.SYS file in your QEMM
  240. ;   directory.  We are about to alter your current copy
  241. ;   of QEMM.SYS; the copy you make will serve as a
  242. ;   backup in case this operation fails.
  243. ;
  244. ;         COPY C:\QEMM\QEMM.SYS C:\QEMM\QEMM.OLD
  245. ;
  246. ;     (If your QEMM.SYS is not located in the QEMM
  247. ;   directory of the C: drive, change the path
  248. ;   accordingly.)
  249. ;
  250. ;     2) Go to the DOS directory on the hard disk and
  251. ;   type:
  252. ;
  253. ;       DEBUG C:\QEMM\QEMM.SYS
  254. ;
  255. ;     (If your QEMM.SYS is not located in the